package com.rzl.expense.expense.mapper.twr;

import com.rzl.expense.expense.domain.twr.TwrHighRoomSummary;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 铁塔-高价格机房占比分析汇总Mapper接口
 *
 * @author expense
 * @date 2024-12-01
 */
public interface TwrHighRoomSummaryMapper {
    /**
     * 查询铁塔-高价格机房占比分析汇总
     *
     * @param staDate 铁塔-高价格机房占比分析汇总主键
     * @return 铁塔-高价格机房占比分析汇总
     */
    public TwrHighRoomSummary selectTwrHighRoomSummaryByStaDate(String staDate);

    /**
     * 查询铁塔-高价格机房占比分析汇总列表
     *
     * @param twrHighRoomSummary 铁塔-高价格机房占比分析汇总
     * @return 铁塔-高价格机房占比分析汇总集合
     */
    public List<TwrHighRoomSummary> selectTwrHighRoomSummaryList(TwrHighRoomSummary twrHighRoomSummary);

    public List<TwrHighRoomSummary> allYearTrend(TwrHighRoomSummary twrHighRoomSummary);

    /**
     * 新增铁塔-高价格机房占比分析汇总
     *
     * @param twrHighRoomSummary 铁塔-高价格机房占比分析汇总
     * @return 结果
     */
    public int insertTwrHighRoomSummary(TwrHighRoomSummary twrHighRoomSummary);

    /**
     * 修改铁塔-高价格机房占比分析汇总
     *
     * @param twrHighRoomSummary 铁塔-高价格机房占比分析汇总
     * @return 结果
     */
    public int updateTwrHighRoomSummary(TwrHighRoomSummary twrHighRoomSummary);

    /**
     * 删除铁塔-高价格机房占比分析汇总
     *
     * @param staDate 铁塔-高价格机房占比分析汇总主键
     * @return 结果
     */
    public int deleteTwrHighRoomSummaryByStaDate(String staDate);

    /**
     * 批量删除铁塔-高价格机房占比分析汇总
     *
     * @param staDates 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTwrHighRoomSummaryByStaDates(String[] staDates);

    public void batchTwrHighRoomSummary(List<TwrHighRoomSummary> list);

    public List<String> summaryStaDates();

    public List<TwrHighRoomSummary> summaryHighRoomByStaDate(String date);

    public TwrHighRoomSummary summaryCompareHighRoom(TwrHighRoomSummary twrHighRoomSummary);

    public Integer summaryCompareHighRoomCount(@Param("staDate") String staDate);

}
